package com.monise.model;

import java.io.Serializable;
import java.math.BigDecimal;
import java.sql.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

@Entity
@Table(name="ENTRADA_CAIXA")
public class EntradaCaixa implements Serializable {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@Id
	@SequenceGenerator(name="ENTRADA_CAIXA_SEQUENCE", sequenceName="ENTRADA_CAIXA_SEQUENCE", initialValue=1, allocationSize=1)
	@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="ENTRADA_CAIXA_SEQUENCE")
	@Column(name = "pkEntrada")
	private long pkEntrada;
	
	@Column(name="valor")
	private BigDecimal valor;
	
	@OneToOne
	@JoinColumn(name="fkTipoMovimentacao")
	private TipoMovimentacao tipoMovimentacao;
	
	@Column(name="outro")
	private String outro;
	
	@Column(name="observacao")
	private String observacao;
	
	@Column(name="dataEntrada")
	private Date dataEntrada;

	public long getPkEntrada() {
		return pkEntrada;
	}

	public void setPkEntrada(long pkEntrada) {
		this.pkEntrada = pkEntrada;
	}

	public BigDecimal getValor() {
		return valor;
	}

	public void setValor(BigDecimal valor) {
		this.valor = valor;
	}

	public TipoMovimentacao getTipoMovimentacao() {
		return tipoMovimentacao;
	}

	public void setTipoMovimentacao(TipoMovimentacao tipoMovimentacao) {
		this.tipoMovimentacao = tipoMovimentacao;
	}

	public String getOutro() {
		return outro;
	}

	public void setOutro(String outro) {
		this.outro = outro;
	}

	public String getObservacao() {
		return observacao;
	}

	public void setObservacao(String observacao) {
		this.observacao = observacao;
	}

	public Date getDataEntrada() {
		return dataEntrada;
	}

	public void setDataEntrada(Date dataEntrada) {
		this.dataEntrada = dataEntrada;
	}

}
